消息推送实现方法、移动终端及消息推送系统

您所在的位置:网站首页 终端上送数据错误 光大 消息推送实现方法、移动终端及消息推送系统

消息推送实现方法、移动终端及消息推送系统

2024-02-24 08:04| 来源: 网络整理| 查看: 265

摘要

  本发明提供一种消息推送实现方法,包括:移动终端上的正向代理服务模块与服务器之间建立长连接;所述正向代理服务模块通过所述长连接转发所述移动终端上的应用与所述服务器之间交互的信息;其中,所述移动终端上的应用包括多个应用;所述多个应用复用同一长连接。本发明还提供一种消息推送实现系统和移动终端。本发明可以为移动终端节省流量和电量。

说明

  消息推送实现方法、移动终端及消息推送系统

技术领域

  本申请涉及网络领域,尤其涉及一种消息推送实现方法、移动终端和消息推送系统。

背景技术

  MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是轻量级的消息传输协议,使用发布/订阅消息模式,提供一对多的消息发布。XMPP (ExtensibleMessaging and Presence Protocol,可扩展消息处理现场协议)是一种基于XML(Extensible Markup Language,可扩展标记语言)的协议,它继承了在XML环境中灵活的发展性,XMPP可以通过发送扩展的信息来处理用户的需求。从协议层面来看,这两个协议都可以用来进行消息推送,但由于这两个协议的普及度不高,很多移动终端上的开发语言如AndroicK安卓)的开发语法JAVA和IPhone上的开发语言0BJECT-C,都没有成熟的组件提供对这两个协议的支持。

  目前移动终端的不同应用和后端服务器建立长连接以实现消息推送时,都是各自保持一条长连接,每个应用对应一条长连接,如果移动终端上安装了多个应用,就会有多条长连接。为避免长连接被中间的网络节点如运营商的网关关闭,客户端和服务器之间需要按照一定的频率不断地交换数据,我们称这种数据为心跳包,心跳包需要耗费网络流量和电量。因此,在移动终端上保活多条长连接的成本是昂贵的。

  考虑到安全性和流量、电量因素,客户端不会直接和消息中心相连,而是通过反向代理和消息中心相连。为保证消息的及时送达,需要一种机制来判断是否有新的数据产生。现有技术中是通过服务器不断询问消息中心是否有新的数据产生,对及时性要求比较强的消息,如果采用轮询的方式会因为轮询间隔太短对服务器造成很大压力。

现有技术可能存在以下的问题:

  I)客户端和服务器实现新的协议有难度

    无论XMPP还是MQTT都是一个协议簇,客户端和服务器想要通过该协议实现通信,就必须都完成协议的实现,实现协议之前开发人员要先理解协议,理解和实现协议,都需要很长的时间。

  2)保活多条长连接耗费大量的网络流量和电量

     客户端和服务器之间建立长连接,需要通过不间断地发送心跳包来达到保活连接的目的,否则长连接会被链路的中间节点,如运营商的网关,直接关闭。移动终端和服务器之间建立的连接越多,保活带来的流量和电量的开销也越大。

  3)不能适应多种消息类型

    用户订阅的多种类型的消息的即时性要求各不相同,后台服务器要么牺牲性能保证实时消息及时送达,要么牺牲用户体验让所有消息都延迟投递。

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3